home *** CD-ROM | disk | FTP | other *** search
/ How Would You Survive? / How Would You Survive (1995)(Grolier)[Mac-PC].iso / mac / SHARED.DIR / 01976_Script_aPullDown < prev    next >
Text File  |  1995-09-13  |  6KB  |  222 lines

  1. property pSprite,pCast,pNutral,pHilighted,pSelected,pRow1,pRow2,¼
  2. pFunction1,pMySound,pCursor,pPullDownCast,pFunction2,phelpStatus,glossaryS,indexS
  3.  
  4. on birth me,theSprite,theCast,thePullDownCast,aSound,aFunction1,aFunction2,aCursor
  5.   set pSprite = theSprite
  6.   set pcursor = aCursor
  7.   set pCast = theCast
  8.   set pMySound = aSound
  9.   set pNutral = pCast
  10.   set pHilighted = pCast + 1
  11.   set pPullDownCast = thePullDownCast
  12.   set pRow1 = pPullDownCast + 1
  13.   set pRow2 = pPullDownCast + 2
  14.   set pFunction1 = aFunction1
  15.   set pFunction2 = aFunction2
  16.   puppetSprite pSprite, TRUE
  17.   set phelpStatus = 0
  18.   set glossaryS = 0
  19.   set indexS = 0
  20.   set the castNum of sprite pSprite = pCast
  21.   return me
  22. end
  23.  
  24. on changePullDownButton me, newPullDownCast
  25.   set pPullDownCast = newPullDownCast
  26.   set pRow1 = pPullDownCast + 1
  27.   set pRow2 = pPullDownCast + 2
  28. end
  29.  
  30. on setNewFunctions me, aFunction1, aFunction2 
  31.   set pFunction1 = aFunction1
  32.   set pFunction2 = aFunction2
  33. end
  34.  
  35. on TurnOnHelpSound me
  36.   set phelpStatus = 1
  37. end
  38.  
  39. on TurnOffHelpSound me
  40.   set phelpStatus = 0
  41. end
  42.  
  43. on setNewSound me, anewSound 
  44.   set pMySound = anewSound
  45. end
  46.  
  47. on reset me
  48.   set the castNum of sprite pSprite = pNutral
  49.   updatestage
  50. end
  51.  
  52. on setDemoHilight me
  53.   set the castNum of sprite pSprite = pHilighted
  54.   updatestage
  55. end
  56.  
  57. on setNewScrollFunction me, aScrollFunction 
  58.   set pScrollFunction = aScrollFunction
  59. end
  60.  
  61. on hilightPullDown me
  62.   puppetsprite pSprite, true
  63.   set glossaryS = 0
  64.   set indexS = 0
  65.   set pbeenclicked = 0
  66.   set beenclickedtwice = 0
  67.   puppettransition 0
  68.   set the cursor of sprite pSprite = [1904, 1905]
  69.   repeat while (rollover(pSprite))
  70.     if (the castNum of sprite pSprite = pNutral) then
  71.       set the castNum of sprite pSprite = pHilighted 
  72.       if phelpStatus = 1 then 
  73.         puppetsound pMySound
  74.       end if
  75.       set pbeenclicked = False
  76.       updatestage
  77.       if soundBusy(3) then
  78.         exit
  79.       end if
  80.     else
  81.       if (the MouseDown) then
  82.         if (not(the castNum of sprite pSprite = pPullDownCast)) then
  83.           puppetsound "FeatureButSplClk.AIFF" 
  84.           updatestage
  85.         end if
  86.         set the castNum of sprite pSprite = pPullDownCast
  87.         set pbeenclicked = true
  88.         exit repeat
  89.       else
  90.         if soundBusy(3) then
  91.           exit
  92.         end if
  93.       end if
  94.     end if
  95.   end repeat
  96.   if (pbeenclicked = 1) then
  97.     repeat while rollover(psprite)
  98.       if (the mouseup) then
  99.         if (the MouseH > 65 and the MouseH <144) and the mouseV > 71 and the MouseV < 99 then
  100.           set glossaryS = 1
  101.           set indexS = 0
  102.           set the castNum of sprite pSprite = pRow1
  103.           updatestage
  104.         else
  105.           if (the MouseH > 65 and the MouseH <144) and the mouseV > 99 and the MouseV < 127 then
  106.             set indexS = 1
  107.             set glossaryS = 0
  108.             set the castNum of sprite pSprite = pRow2
  109.             updatestage
  110.           else
  111.             NoStatus
  112.             set the castNum of sprite pSprite = pPullDownCast
  113.             updatestage
  114.           end if
  115.         end if
  116.         if (the mousedown) then
  117.           set beenclickedtwice = 1
  118.         end if
  119.       else  
  120.         if beenclickedtwice = 0 then
  121.           dontpassevent
  122.         else
  123.           if beenclickedtwice = 1 then
  124.             if glossaryS = 1 then
  125.               set count = 0
  126.               repeat while count < 4
  127.                 set the castNum of sprite pSprite = pPullDownCast
  128.                 updatestage
  129.                 wait .1
  130.                 set the castNum of sprite pSprite = pRow1
  131.                 updatestage
  132.                 wait .1
  133.                 set count = count + 1
  134.               end repeat
  135.               reset me
  136.               set the cursor of sprite pSprite = [1910, 1911]
  137.               do pfunction1
  138.               abort
  139.               --return true
  140.             else
  141.               if indexS = 1 then
  142.                 set count = 0
  143.                 repeat while count < 4
  144.                   set the castNum of sprite pSprite = pPullDownCast
  145.                   updatestage
  146.                   wait .1
  147.                   set the castNum of sprite pSprite = pRow2
  148.                   updatestage
  149.                   wait .1
  150.                   set count = count + 1
  151.                 end repeat
  152.                 reset me
  153.                 set the cursor of sprite pSprite = [1910, 1911]
  154.                 do pfunction2
  155.                 abort
  156.                 --return true
  157.               else
  158.                 reset me
  159.                 abort
  160.               end if
  161.             end if
  162.           end if
  163.         end if
  164.       end if
  165.     end repeat
  166.   end if
  167.   if phelpStatus = 1 then 
  168.     puppetsound 0
  169.   end if
  170.   if rollover(pSprite) then
  171.     if  (the castNum of sprite pSprite = pHilighted) then
  172.       return TRUE
  173.     else
  174.       set the castNum of sprite pSprite = pHilighted
  175.       return TRUE
  176.     end if
  177.   else
  178.     if (the castNum of sprite pSprite = pHilighted) then
  179.       reset me
  180.       return FALSE
  181.     else
  182.       if (the castNum of sprite pSprite = pPullDownCast) then
  183.         reset me
  184.         return FALSE
  185.       else
  186.         if (the castNum of sprite pSprite = pRow1) then
  187.           reset me
  188.           return FALSE
  189.         else
  190.           if (the castNum of sprite pSprite = pRow2) then
  191.             reset me
  192.             return FALSE
  193.           else
  194.             return false
  195.           end if
  196.         end if
  197.       end if
  198.     end if
  199.   end if
  200. end
  201.  
  202.  
  203. on hideControl me
  204.   puppetSprite pSprite, FALSE
  205. end
  206.  
  207. on showControl me
  208.   puppetSprite pSprite, TRUE
  209. end 
  210.  
  211. on Wait amount
  212.   starttimer
  213.   repeat while the timer < (amount * 60)
  214.     nothing
  215.   end repeat
  216. end 
  217.  
  218. on NoStatus me
  219.   set glossaryS = 0
  220.   set indexS = 0
  221. end
  222.